﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;

public partial class Consultas : System.Web.UI.Page
{
    string nombreModulo = "Consultas";

    private static bool modificando = false;

    protected void Page_Init(object sender, EventArgs e)
    {

        cargarPerfilDeAcceso();
        if (!(bool)Session["ProyectosConsultar"])
        {
            Response.Redirect("Cuentas.aspx");
        }

    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)//Al inicio de cargar
        {
            
        }
        else//Cada vez que se actualiza
        {

        }
        List<Pair> nazi = ProtoNazi();

        foreach(Pair tec in nazi)
        {
            Chart1.Series["Duracion"].Points.AddY(((Pair)tec.Second).First);
            Chart1.Series["Duracion"].Points[Chart1.Series["Duracion"].Points.Count-1].AxisLabel = (string)tec.First;
            Chart1.Series["Estimado"].Points.AddY(((Pair)tec.Second).Second);
            Chart1.Series["Estimado"].Points[Chart1.Series["Estimado"].Points.Count-1].AxisLabel = (string)tec.First;
        }

        cargarPerfilDeAcceso();
    }

    private void cargarPerfilDeAcceso()
    {


    }

    protected void Activar_Desactivar_Campos(bool activar)
    {




    }

    protected void Limpiar_Campos()
    {
       

    }


    /**************************************************************/
    public List<Pair> ProtoNazi()
    {
        List<Pair> parPrototipo = null;

        using (SqlConnection cnn = new SqlConnection(ConexionBD.cnnStr))
        {
            cnn.Open();

            string prototipo = "Select Pr.PFGarmus, Pr.PFAlbrecht, Pr.Nombre ";
            prototipo += "FROM Proyectos Pr ";
            prototipo += "WHERE Pr.PFGarmus <> 0 AND Pr.PFAlbrecht <> 0 ";

            SqlCommand cmd = new SqlCommand(prototipo);
            cmd.Connection = cnn;
            cmd.CommandType = CommandType.Text;

            using (SqlDataReader dr = cmd.ExecuteReader())
            {
                parPrototipo = this.ParPrototipo(dr);
            }
        }

        return parPrototipo;
    }



    private List<Pair> ParPrototipo(SqlDataReader dr)
    {
        List<Pair> listaProyectos = new List<Pair>();
        Pair par, parCoor;
        
        int colNombre = dr.GetOrdinal("Nombre");
        int colPFGarmus = dr.GetOrdinal("PFGarmus");
        int colPFAlbrecht = dr.GetOrdinal("PFAlbrecht");

        object[] valores = new object[dr.FieldCount];

        while (dr.Read())
        {
            dr.GetValues(valores);

            string nombre = (string)valores[colNombre];
            double pfGarmus = Convert.ToDouble(valores[colPFGarmus]);
            double pfAlbrecht = Convert.ToDouble(valores[colPFAlbrecht]);

            parCoor = new Pair(pfGarmus, pfAlbrecht);
            par = new Pair(nombre, parCoor);
            
            listaProyectos.Add(par);
        }

        return listaProyectos;
    }
    /**************************************************************/
}
